package avicit.cbb.businessclass.fondsmanage.domain;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Id;

import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;

import avicit.platform6.core.annotation.log.FieldRemark;
import avicit.platform6.core.annotation.log.LogField;
import avicit.platform6.core.domain.BeanBase;
import avicit.platform6.core.properties.PlatformConstant.LogType;

/**
 * <p>金航数码科技有限责任公司</p>
 * <p>作者：朱锋</p>
 * <p>邮箱：346916116@qq.com</p>
 * <p>创建时间： 2015-08-2 下午5:48:19 </p>
 * <p>类说明：全文服务器设置业务类</p>
 * <p>修改记录： </p>
 */
public class CbbFondsServer extends BeanBase implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@LogField
	@FieldRemark(column = "ID", field = "id", name = "全文服务器设置信息ID")
	/** identifier field */
	private String id;

	/** persistent field */
	private String orgId;

	/** persistent field */
	private String deptId;

	/** nullable persistent field */
	private String sysId;

	@LogField
	@FieldRemark(column = "CBB_FONDS_DB_ID", field = "cbbFondsDbId", name = "全宗库信息ID")
	/** persistent field */
	private String cbbFondsDbId;

	@LogField
	@FieldRemark(column = "FULLSVR_TYPE", field = "fullsvrType", name = "全文服务器类型")
	/** persistent field */
	private String fullsvrType;

	@LogField
	@FieldRemark(column = "SVR_ADDRESS", field = "svrAddress", name = "服务器地址")
	/** nullable persistent field */
	private String svrAddress;

	@LogField
	@FieldRemark(column = "SVR_PUBLISH_PATH", field = "svrPublishPath", name = "发布路径")
	/** nullable persistent field */
	private String svrPublishPath;

	@LogField
	@FieldRemark(column = "FTP_USER", field = "ftpUser", name = "FTP用户名")
	/** nullable persistent field */
	private String ftpUser;

	@LogField
	@FieldRemark(column = "FTP_PASSWORD", field = "ftpPassword", name = "FTP密码")
	/** nullable persistent field */
	private String ftpPassword;

	@LogField
	@FieldRemark(column = "IS_ENCRYPT", field = "isEncrypt", name = "是否加密")
	/** nullable persistent field */
	private String isEncrypt;

	@LogField
	@FieldRemark(column = "REMARK", field = "remark", name = "备注")
	/** nullable persistent field */
	private String remark;

	/** nullable persistent field */
	private String secretLevel;

	/** nullable persistent field */
	private String sysApplicationId;

	/** persistent field */
	private String createdBy;

	/** persistent field */
	private Date creationDate;

	/** persistent field */
	private String lastUpdatedBy;

	/** persistent field */
	private Date lastUpdateDate;

	/** persistent field */
	private String lastUpdateIp;

	/** persistent field */
	private Long version;

	/** nullable persistent field */
	private String attribute01;

	/** nullable persistent field */
	private String attribute02;

	/** nullable persistent field */
	private String attribute03;

	/** nullable persistent field */
	private String attribute04;

	/** nullable persistent field */
	private String attribute05;

	/** nullable persistent field */
	private String attribute06;

	/** nullable persistent field */
	private String attribute07;

	/** nullable persistent field */
	private String attribute08;

	/** nullable persistent field */
	private Date attribute09;

	/** nullable persistent field */
	private Date attribute10;

	/** nullable persistent field */
	private Double attribute11;

	/** nullable persistent field */
	private Double attribute12;

	/** nullable persistent field */
	private Double attribute13;

	/** nullable persistent field */
	private Double attribute14;

	/** nullable persistent field */
	private Double attribute15;

	/** full constructor */
	public CbbFondsServer(String orgId, String deptId, String sysId,
			String cbbFondsDbId, String fullsvrType, String svrAddress,
			String svrPublishPath, String ftpUser, String ftpPassword,
			String isEncrypt, String remark, String secretLevel,
			String sysApplicationId, String createdBy, Date creationDate,
			String lastUpdatedBy, Date lastUpdateDate, String lastUpdateIp,
			Long version, String attribute01, String attribute02,
			String attribute03, String attribute04, String attribute05,
			String attribute06, String attribute07, String attribute08,
			Date attribute09, Date attribute10, Double attribute11,
			Double attribute12, Double attribute13, Double attribute14,
			Double attribute15) {
		this.orgId = orgId;
		this.deptId = deptId;
		this.sysId = sysId;
		this.cbbFondsDbId = cbbFondsDbId;
		this.fullsvrType = fullsvrType;
		this.svrAddress = svrAddress;
		this.svrPublishPath = svrPublishPath;
		this.ftpUser = ftpUser;
		this.ftpPassword = ftpPassword;
		this.isEncrypt = isEncrypt;
		this.remark = remark;
		this.secretLevel = secretLevel;
		this.sysApplicationId = sysApplicationId;
		this.createdBy = createdBy;
		this.creationDate = creationDate;
		this.lastUpdatedBy = lastUpdatedBy;
		this.lastUpdateDate = lastUpdateDate;
		this.lastUpdateIp = lastUpdateIp;
		this.version = version;
		this.attribute01 = attribute01;
		this.attribute02 = attribute02;
		this.attribute03 = attribute03;
		this.attribute04 = attribute04;
		this.attribute05 = attribute05;
		this.attribute06 = attribute06;
		this.attribute07 = attribute07;
		this.attribute08 = attribute08;
		this.attribute09 = attribute09;
		this.attribute10 = attribute10;
		this.attribute11 = attribute11;
		this.attribute12 = attribute12;
		this.attribute13 = attribute13;
		this.attribute14 = attribute14;
		this.attribute15 = attribute15;
	}

	/** default constructor */
	public CbbFondsServer() {
	}

	/** minimal constructor */
	public CbbFondsServer(String orgId, String deptId, String cbbFondsDbId,
			String fullsvrType, String createdBy, Date creationDate,
			String lastUpdatedBy, Date lastUpdateDate, String lastUpdateIp,
			Long version) {
		this.orgId = orgId;
		this.deptId = deptId;
		this.cbbFondsDbId = cbbFondsDbId;
		this.fullsvrType = fullsvrType;
		this.createdBy = createdBy;
		this.creationDate = creationDate;
		this.lastUpdatedBy = lastUpdatedBy;
		this.lastUpdateDate = lastUpdateDate;
		this.lastUpdateIp = lastUpdateIp;
		this.version = version;
	}

	@Id
	public String getId() {
		return this.id;
	}

	public void setId(String id) {
		this.id = id;
	}

	@LogField
	public String getOrgId() {
		return this.orgId;
	}

	public void setOrgId(String orgId) {
		this.orgId = orgId;
	}

	@LogField
	public String getDeptId() {
		return this.deptId;
	}

	public void setDeptId(String deptId) {
		this.deptId = deptId;
	}

	@LogField
	public String getSysId() {
		return this.sysId;
	}

	public void setSysId(String sysId) {
		this.sysId = sysId;
	}

	@LogField
	public String getCbbFondsDbId() {
		return this.cbbFondsDbId;
	}

	public void setCbbFondsDbId(String cbbFondsDbId) {
		this.cbbFondsDbId = cbbFondsDbId;
	}

	@LogField
	public String getFullsvrType() {
		return this.fullsvrType;
	}

	public void setFullsvrType(String fullsvrType) {
		this.fullsvrType = fullsvrType;
	}

	@LogField
	public String getSvrAddress() {
		return this.svrAddress;
	}

	public void setSvrAddress(String svrAddress) {
		this.svrAddress = svrAddress;
	}

	@LogField
	public String getSvrPublishPath() {
		return this.svrPublishPath;
	}

	public void setSvrPublishPath(String svrPublishPath) {
		this.svrPublishPath = svrPublishPath;
	}

	@LogField
	public String getFtpUser() {
		return this.ftpUser;
	}

	public void setFtpUser(String ftpUser) {
		this.ftpUser = ftpUser;
	}

	@LogField
	public String getFtpPassword() {
		return this.ftpPassword;
	}

	public void setFtpPassword(String ftpPassword) {
		this.ftpPassword = ftpPassword;
	}

	@LogField
	public String getIsEncrypt() {
		return this.isEncrypt;
	}

	public void setIsEncrypt(String isEncrypt) {
		this.isEncrypt = isEncrypt;
	}

	@LogField
	public String getRemark() {
		return this.remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	@LogField
	public String getSecretLevel() {
		return this.secretLevel;
	}

	public void setSecretLevel(String secretLevel) {
		this.secretLevel = secretLevel;
	}

	@LogField
	public String getSysApplicationId() {
		return this.sysApplicationId;
	}

	public void setSysApplicationId(String sysApplicationId) {
		this.sysApplicationId = sysApplicationId;
	}

	@LogField
	public String getCreatedBy() {
		return this.createdBy;
	}

	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

	@LogField
	public Date getCreationDate() {
		return this.creationDate;
	}

	public void setCreationDate(Date creationDate) {
		this.creationDate = creationDate;
	}

	@LogField
	public String getLastUpdatedBy() {
		return this.lastUpdatedBy;
	}

	public void setLastUpdatedBy(String lastUpdatedBy) {
		this.lastUpdatedBy = lastUpdatedBy;
	}

	@LogField
	public Date getLastUpdateDate() {
		return this.lastUpdateDate;
	}

	public void setLastUpdateDate(Date lastUpdateDate) {
		this.lastUpdateDate = lastUpdateDate;
	}

	@LogField
	public String getLastUpdateIp() {
		return this.lastUpdateIp;
	}

	public void setLastUpdateIp(String lastUpdateIp) {
		this.lastUpdateIp = lastUpdateIp;
	}

	@LogField
	public Long getVersion() {
		return this.version;
	}

	public void setVersion(Long version) {
		this.version = version;
	}

	public String getAttribute01() {
		return this.attribute01;
	}

	public void setAttribute01(String attribute01) {
		this.attribute01 = attribute01;
	}

	public String getAttribute02() {
		return this.attribute02;
	}

	public void setAttribute02(String attribute02) {
		this.attribute02 = attribute02;
	}

	public String getAttribute03() {
		return this.attribute03;
	}

	public void setAttribute03(String attribute03) {
		this.attribute03 = attribute03;
	}

	public String getAttribute04() {
		return this.attribute04;
	}

	public void setAttribute04(String attribute04) {
		this.attribute04 = attribute04;
	}

	public String getAttribute05() {
		return this.attribute05;
	}

	public void setAttribute05(String attribute05) {
		this.attribute05 = attribute05;
	}

	public String getAttribute06() {
		return this.attribute06;
	}

	public void setAttribute06(String attribute06) {
		this.attribute06 = attribute06;
	}

	public String getAttribute07() {
		return this.attribute07;
	}

	public void setAttribute07(String attribute07) {
		this.attribute07 = attribute07;
	}

	public String getAttribute08() {
		return this.attribute08;
	}

	public void setAttribute08(String attribute08) {
		this.attribute08 = attribute08;
	}

	public Date getAttribute09() {
		return this.attribute09;
	}

	public void setAttribute09(Date attribute09) {
		this.attribute09 = attribute09;
	}

	public Date getAttribute10() {
		return this.attribute10;
	}

	public void setAttribute10(Date attribute10) {
		this.attribute10 = attribute10;
	}

	public Double getAttribute11() {
		return this.attribute11;
	}

	public void setAttribute11(Double attribute11) {
		this.attribute11 = attribute11;
	}

	public Double getAttribute12() {
		return this.attribute12;
	}

	public void setAttribute12(Double attribute12) {
		this.attribute12 = attribute12;
	}

	public Double getAttribute13() {
		return this.attribute13;
	}

	public void setAttribute13(Double attribute13) {
		this.attribute13 = attribute13;
	}

	public Double getAttribute14() {
		return this.attribute14;
	}

	public void setAttribute14(Double attribute14) {
		this.attribute14 = attribute14;
	}

	public Double getAttribute15() {
		return this.attribute15;
	}

	public void setAttribute15(Double attribute15) {
		this.attribute15 = attribute15;
	}
	/**
	 * 转成字符串
	 * @return 
	 * @throws
	 */
	public String toString() {
		return new ToStringBuilder(this).append("id", getId()).toString();
	}
	/**
	 * 比对对象
	 * @param other
	 * @return 
	 * @throws
	 */
	public boolean equals(Object other) {
		if (!(other instanceof CbbFondsServer)) {
			return false;
		}
		CbbFondsServer castOther = (CbbFondsServer) other;
		return new EqualsBuilder().append(this.getId(), castOther.getId())
				.isEquals();
	}
	/**
	 * 哈希编码
	 * @return 
	 * @throws
	 */
	public int hashCode() {
		return new HashCodeBuilder().append(getId()).toHashCode();
	}

	public String getFormId() {
		return id;
	}

	public String getFormName() {
		return null;
	}

	public String getTitle() {
		return null;
	}
	/**
	 * TODO 获取日志表单名称
	 * @return 
	 * @throws
	 */
	public String getLogFormName() {
		if (super.logFormName == null || super.logFormName.equals("")) {
			return "全宗管理服务模块";
		} else {
			return super.logFormName;
		}
	}
	/**
	 * TODO 获取日志标题
	 * @return 
	 * @throws
	 */
	public String getLogTitle() {
		if (super.logTitle == null || super.logTitle.equals("")) {
			return "全宗管理服务模块";
		} else {
			return super.logTitle;
		}
	}
	/**
	 * TODO 获取日志类型
	 * @return 
	 * @throws
	 */
	public LogType getLogType() {
		if (super.logType == null || super.logType.toString().equals("")) {
			return LogType.module_operate;
		} else {
			return super.logType;
		}
	}
}
